#!/usr/bin/env node

const http = require('http'),
      url  = require('url'),
      qs   = require('querystring');
      
let items=[];

function genPage(){
  let dom = items.map(i => '<li>'+i+'</li>').join('\n');
  let html =`
    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>ToDo List</title>
    </head>
    <body>
      <h1>ToDo List</h1>
      <form method='GET' actinon='http://192.168.59.144:8080'>
        <input type="text", name='item'>
        <input type="submit", value='submit'>
      </form>
      <ul>
        ${dom}
      </ul>
    </body>
    </html>
  `;

  return html;
}

http.createServer((req,res) => {

  let addr = url.parse(req.url);
  if(addr.pathname !== '/'){
    res.statusCode = 404;
    res.setHeader('Content-Type','text/html');
    res.end('<h1>Not Found!</h1>');
    return;
  }
  let item = qs.parse(addr.query).item;
  if(item !== '' && typeof item !== 'undefined'){
    items.push(item);
  }
  res.writeHead(200,{
    'Content-Type':'text/html',
    'Content-Length':Buffer.byteLength(genPage())
  });

  res.end(genPage());
 }).listen(8080);

